#include<stdio.h>
#include<string.h>
#include<unistd.h>
#include<sys/types.h>
#include<sys/stat.h>
#include<fcntl.h>


int main()
{
    //文件的系统调用接口
    umask(0);
    int fd0 = open("log0.txt",O_WRONLY|O_CREAT|O_APPEND|0666);
    printf("fd0:%d\n",fd0);

    close(fd0);
    return 0;
}


////位图的运用
//#define VERSION1 (1<<0)
//#define VERSION2 (1<<1)
//#define VERSION3 (1<<2)
//#define VERSION4 (1<<3)
//#define VERSION5 (1<<4)
//
//void ShowVersion(int flag)
//{
//    if(flag &VERSION1)
//        printf("VERSION1\n");
//    if(flag &VERSION2)
//        printf("VERSION2\n");
//    if(flag &VERSION3)
//        printf("VERSION3\n");
//    if(flag &VERSION4)
//        printf("VERSION4\n");
//    if(flag &VERSION5)
//        printf("VERSION5\n");
//}
//int main()
//{
//    ShowVersion(VERSION1);
//    printf("-------------------\n");
//    ShowVersion(VERSION1|VERSION5);
//    printf("-------------------\n");
//    ShowVersion(VERSION1|VERSION1);
//    printf("-------------------\n");
//    ShowVersion(VERSION1|VERSION2|VERSION4);
//    printf("-------------------\n");
//    ShowVersion(VERSION1|VERSION2|VERSION5);
//    printf("-------------------\n");
//    ShowVersion(VERSION1|VERSION2|VERSION3|VERSION4|VERSION5);
//    return 0;
//}


//int main()
//{
//    //打印文件的各种方式
//    //不管用什么打印都是往显示器上打
//    const char *s1="hello printf\n";
//    printf(s1);
//
//    const char *s2 ="hello fprintf\n";
//    fprintf(stdout,s2);
//
//    const char *s3 = "hello fputs\n";
//    fputs(s3,stdout);
//
//    const char *s4 = "hello fwrite\n";
//    fwrite(s4,strlen(s4),1,stdout);
//
//
//    //printf("我是一个进程:%d\n",getpid());
//    ////打开文件练习 
//    ////新建路径都是在当前cwd下新建
//    ////如果改变当前路径可以指定新建位置
//   //// chdir("/home/zss");
//    //FILE *fp=fopen("log.txt","w");
//    //if(!fp)
//    //{
//    //    perror("fopen");
//    //    return 1;
//    //}
//    ////向文件里写入信息
//    //const char* str="hello zss\n";
//    //fwrite(str,strlen(str),1,fp);
//   //// while(1)
//   //// {
//   ////     sleep(1);
//   //// }
//    //fclose(fp);
//    return 0;
//}
